export const parseStringToObject = (str: string): any => {
  let result = JSON.parse(str); // 将字符串解析为对象
  while (typeof result === 'string') { // 如果解析结果仍然是字符串
    result = JSON.parse(str); // 继续解析字符串
  }
  return result; // 返回最终解析的对象
};
export const parseHtmlToRightHtml = (html: string): string => {
  // 创建一个递归解码函数
  const decodeHtmlEntities = (encodedStr: string): string => {
    const tempDiv = document.createElement('div');
    
    // 处理 HTML 实体
    tempDiv.innerHTML = encodedStr;
    let decodedText = tempDiv.textContent || tempDiv.innerText || '';
    
    // 检查是否还需要进一步解码
    if (decodedText.includes('&amp;') || 
        decodedText.includes('&lt;') || 
        decodedText.includes('&gt;') ||
        decodedText.includes('&quot;')) {
      return decodeHtmlEntities(decodedText);
    }
    
    return decodedText;
  };

  try {
    // 第一次解码
    let decodedResult = decodeHtmlEntities(html);
    
    // 清理多余的空格和换行
    decodedResult = decodedResult.replace(/\s+/g, ' ').trim();
    
    return decodedResult;
  } catch (error) {
    console.error('Error parsing HTML:', error);
    return html; // 如果解析失败，返回原始字符串
  }
};